Synthesizing Monitors for Safety Properties
نویسندگان
چکیده
We present an extension of past time LTL with call/return atoms, called ptCaRet, together with a monitor synthesis algorithm for it. ptCaRet includes abstract variants of past temporal operators, which can express properties over traces in which terminated function or procedure executions are abstracted away into a call and a corresponding return. This way, ptCaRet can express safety properties about procedural programs which cannot be expressed using conventional linear temporal logics. The generated monitors contain both a local state and a stack. The local state is encoded on as many bits as concrete temporal operators the original formula has. The stack pushes/pops bit vectors of size the number of abstract temporal operators the original formula has: push on begins, pop on ends of procedure executions. An optimized implementation is also discussed and is available to download.
منابع مشابه
Monitoring Off-the-Shelf Components
Software is being developed from off-the-shelf third party components. The interface specification of such a component may be under specified or may not fully match the user requirement. In this paper, we address the problem of customizing such components to particular users. We achieve this by constructing a monitor that monitors the component and detects any bad behaviors. Construction of suc...
متن کاملSynthesizing Enforcement Monitors wrt. the Safety-Progress Classification of Properties
Runtime enforcement is a powerful technique to ensure that a program will respect a given security policy. We extend previous works on this topic in several directions. Firstly, we propose a generic notion of enforcement monitors based on a memory device and finite sets of control states and enforcement operations. Moreover, we specify their enforcement abilities w.r.t. the general safety-progr...
متن کاملSynthesizing Runtime Enforcer of Safety Properties Under Burst Error
We propose a game-based method for synthesizing a runtime enforcer for a reactive system to ensure that a set of safety-critical properties always holds even if errors occur in the system due to design defect or environmental disturbance. The runtime enforcer does not modify the internals of the system or provide a redundant implementation; instead, it monitors the input and output of the syste...
متن کاملEnforcing Non-safety Security Policies with Program Monitors
We consider the enforcement powers of program monitors, which intercept security-sensitive actions of a target application at run time and take remedial steps whenever the target attempts to execute a potentially dangerous action. A common belief in the security community is that program monitors, regardless of the remedial steps available to them when detecting violations, can only enforce saf...
متن کاملApplying High-Level Synthesis for Synthesizing Hardware Runtime STL Monitors of Mission-Critical Properties
Runtime monitoring is an important technique for catching failures. This work shows how to synthesize hardware runtime monitors using High-Level Synthesis to check system requirements that are formalized and expressed in Signal Temporal Logic. We describe our flow starting from a natural language requirement to hardware implementation. As a case study, we apply our flow to monitor a mission-cri...
متن کامل